Crate sp_arithmetic

source ·
Expand description

Minimal fixed point arithmetic primitives and types for runtime.

Re-exports

pub use fixed_point::FixedI128;
pub use fixed_point::FixedI64;
pub use fixed_point::FixedPointNumber;
pub use fixed_point::FixedPointOperand;
pub use fixed_point::FixedU128;
pub use per_things::InnerOf;
pub use per_things::MultiplyArg;
pub use per_things::PerThing;
pub use per_things::PerU16;
pub use per_things::Perbill;
pub use per_things::Percent;
pub use per_things::Permill;
pub use per_things::Perquintill;
pub use per_things::RationalArg;
pub use per_things::ReciprocalArg;
pub use per_things::Rounding;
pub use per_things::SignedRounding;
pub use per_things::UpperOf;
pub use rational::Rational128;
pub use rational::RationalInfinite;

Modules

Infinite precision unsigned integer for substrate runtime.
Decimal Fixed Point implementations for Substrate runtime.
Some helper functions to work with 128bit numbers. Note that the functionality provided here is only sensible to use with 128bit numbers because for smaller sizes, you can always rely on assumptions of a bigger type (u128) being available, or simply create a per-thing and use the multiplication implementation provided there.
Primitive traits for the runtime arithmetic.

Macros

Copied from sp-runtime and documented there.

Enums

Arithmetic errors.

Traits

A collection-like object that is made of values of type T and can normalize its individual values around a centric point.
Trait for comparing two numbers with an threshold.

Functions

Normalize input so that the sum of all elements reaches targeted_sum.